% UMLAUT.TeX as of 20.11.1990
%
% German Umlaut keys for Atari ST Computer with TeX 3.1 // 2.0cs
%
% This file contains - together with TEX.TTP - the coding of the Cork table.
% If you want to see the cork codes, you must install an appropriate system
% font with FONT.PRG first.
%
% Currently this file works with the standard fonts. For Cork fonts - when they
% become available some day - you must change several things.
%
% The first part works with both: AtariTeX 2.98 // 1.4 and AtariTeX 3.x // y.z
%
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
% Note the difference between beta `�' and es-zet `�' !
\lccode`�=`� \uccode`�=`� % `�' is uppercase `�' in our cork table coding
%
\ifx\protect\undefined\let\protect=\relax\fi
%
% `"' is already defined in german.tex
%
% For cork fonts this must be reversed, e.g. "a would expand to �
%
\catcode`�=\active \def�{"s}% es-zet code; NOT beta !
\catcode`�=\active \def�{"a}
\catcode`�=\active \def�{"o}
\catcode`�=\active \def�{"u}
\catcode`�=\active \def�{"A}
\catcode`�=\active \def�{"O}
\catcode`�=\active \def�{"U}
\catcode`�=\active \def�{\protect\S{}}
%
% In old TeX we cannot do any more
%
\ifx\inputlineno\undefined
 \message{Your TeX is old. Please upgrade to TeX 3.0}\endinput\fi
\ifnum\inputlineno=-1
 \message{Your TeX is old. Please upgrade to TeX 3.0}\endinput\fi
%
% The following works for TeX 3.0 (and up) only.
%
% Some upper- and lower-case conversions for are already defined above and
% below. These are commented out here:
%
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
%% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % useless
%% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % useless
%% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % useless
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % see above
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % see above
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % see above
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
\lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`�
% \lccode`�=`� \uccode`�=`� \lccode`�=`� \uccode`�=`� % see above and below
%
% The following definitions come directly from the Cork table:
%
\catcode`@=11 % letter
%
\ifx\pounds\undefined
 \def\pounds{\protect\ppounds}
 \def\ppounds{\relax\ifmmode\mathchar"424\else{\it \char'44}\fi} \fi
%
\font\minis@n=cmss10
\font\s@n=cmss10 scaled \magstep1
\font\S@n=cmss10 scaled \magstep2
%
\def\eng{{\s@n r \hskip-6pt\j}}
\def\Eng{{\S@n r \hskip-7pt\j}}
\def\Thorn{\hbox{\S@n\lower4pt\hbox{l} \hskip-8.5pt\relax b}}
\def\thorn{\hbox{\s@n\lower3pt\hbox{l} \hskip-7pt\relax b}}
\def\eth{\hbox{\minis@n \raise4pt\hbox{$\times$} \hskip-8.5pt\relax o}}
\def\Eth{\rlap{\raise0.3ex\hbox{--}}D}
%
\catcode`@=12 % other
%
\def\ogonek#1{\setbox0=\hbox{`}\ooalign{%
  \hidewidth\lower\ht0\copy0\hidewidth\crcr#1\crcr}}
%
% Re-define Accents to allow hyphenation in words with special characters:
% \" should not be redefined. Its correct definition is in GERMAN.TEX and
% GERMAN_X.TEX.
%
\def\`#1{\leavevmode\allowhyphens{\accent18 #1}\allowhyphens}
\def\'#1{\leavevmode\allowhyphens{\accent19 #1}\allowhyphens}
\def\v#1{\leavevmode\allowhyphens{\accent20 #1}\allowhyphens}
\def\u#1{\leavevmode\allowhyphens{\accent21 #1}\allowhyphens}
\def\=#1{\leavevmode\allowhyphens{\accent22 #1}\allowhyphens}
\def\^#1{\leavevmode\allowhyphens{\accent94 #1}\allowhyphens}
\def\.#1{\leavevmode\allowhyphens{\accent95 #1}\allowhyphens}
\def\H#1{\leavevmode\allowhyphens{\accent125 #1}\allowhyphens}
\def\~#1{\leavevmode\allowhyphens{\accent126 #1}\allowhyphens}
%
% Now here is the rest of the Atari characters
% 
% This table describes how we implement user input codes for the
% cork table. These codes may vary between installations; this will
% be especially true for the characters that are not part of the
% standard Atari ST font layout (similar to IBM PC font layout).
%
% As long as no Cork fonts are available, we must emulate them:
%
\catcode`�=\active \def�{\protect\c C}
\catcode`�=\active \def�{\protect\' e}
\catcode`�=\active \def�{\protect\^ a}
\catcode`�=\active \def�{\protect\` a}
\catcode`�=\active \def�{\protect\aa}
\catcode`�=\active \def�{\protect\c c}
\catcode`�=\active \def�{\protect\^ e}
\catcode`�=\active \def�{\protect\" e}
\catcode`�=\active \def�{\protect\` e}
\catcode`�=\active \def�{\protect\" \i}
\catcode`�=\active \def�{\protect\^ \i}
\catcode`�=\active \def�{\protect\` \i}
\catcode`�=\active \def�{\protect\AA}
\catcode`�=\active \def�{\protect\' E}
\catcode`�=\active \def�{\protect\ae}
\catcode`�=\active \def�{\protect\AE}
\catcode`�=\active \def�{\protect\^ o}
\catcode`�=\active \def�{\protect\` o}
\catcode`�=\active \def�{\protect\^ u}
\catcode`�=\active \def�{\protect\` u}
\catcode`�=\active \def�{\protect\" y}
\catcode`�=\active \def�{\protect\^ U}
\catcode`�=\active \def�{\protect\pounds{}}
\catcode`�=\active \def�{\protect\' Y}
\catcode`�=\active \def�{\protect\ogonek a}
\catcode`�=\active \def�{\protect\' a}
\catcode`�=\active \def�{\protect\' \i}
\catcode`�=\active \def�{\protect\' o}
\catcode`�=\active \def�{\protect\' u}
\catcode`�=\active \def�{\protect\~ n}
\catcode`�=\active \def�{\protect\~ N}
\catcode`�=\active \def�{\protect\' U}
\catcode`�=\active \def�{\protect\^ O}
\catcode`�=\active \def�{?`}
\catcode`�=\active \def�{\protect\' O}
\catcode`�=\active \def�{\protect\` O}
\catcode`�=\active \def�{\protect\Eth}
\catcode`�=\active \def�{\protect\eth}
\catcode`�=\active \def�{!`}
\catcode`�=\active \def�{\protect\` I}
\catcode`�=\active \def�{\protect\' I}
\catcode`�=\active \def�{\protect\~ a}
\catcode`�=\active \def�{\protect\~ o}
\catcode`�=\active \def�{\protect\O}
\catcode`�=\active \def�{\protect\o}
\catcode`�=\active \def�{\protect\oe}
\catcode`�=\active \def�{\protect\OE}
\catcode`�=\active \def�{\protect\` A}
\catcode`�=\active \def�{\protect\~ A}
\catcode`�=\active \def�{\protect\~ O}
\catcode`�=\active \def�{\protect\" I}
\catcode`�=\active \def�{\protect\' A}
\catcode`�=\active \def�{\protect\` E}
\catcode`�=\active \def�{\protect\` U}
\catcode`�=\active \def�{\protect\' y}
\catcode`�=\active \def�{\protect\thorn}
\catcode`�=\active \def�{\protect\Thorn}
\catcode`�=\active \def�{ij}
\catcode`�=\active \def�{IJ}
\catcode`�=\active \def�{\protect\' C}
\catcode`�=\active \def�{\protect\v C}
\catcode`�=\active \def�{\protect\v D}
\catcode`�=\active \def�{\protect\v E}
\catcode`�=\active \def�{\protect\ogonek E}
\catcode`�=\active \def�{\protect\u G}
\catcode`�=\active \def�{\protect\' L}
\catcode`�=\active \def�{L\kern-2pt'}
\catcode`�=\active \def�{\protect\L}
\catcode`�=\active \def�{\protect\' N}
\catcode`�=\active \def�{\protect\v N}
\catcode`�=\active \def�{\protect\Eng}
\catcode`�=\active \def�{\protect\H O}
\catcode`�=\active \def�{\protect\' R}
\catcode`�=\active \def�{\protect\v R}
\catcode`�=\active \def�{\protect\' S}
\catcode`�=\active \def�{\protect\v S}
\catcode`�=\active \def�{\protect\c S}
\catcode`�=\active \def�{\protect\v T}
\catcode`�=\active \def�{\protect\c T}
\catcode`�=\active \def�{\protect\H U}
\catcode`�=\active \def�{\protect\accent23 U}
\catcode`�=\active \def�{\protect\^ I}
\catcode`�=\active \def�{\protect\' Z}
\catcode`�=\active \def�{\protect\v Z}
\catcode`�=\active \def�{\protect\. Z}
\catcode`�=\active \def�{\protect\ogonek A}
\catcode`�=\active \def�{\protect\^ A}
\catcode`�=\active \def�{d\llap{\raise0.7ex\hbox{--}}}
\catcode`�=\active \def�{\protect\u a}
\catcode`�=\active \def�{\protect\' c}
\catcode`�=\active \def�{\protect\v c}
\catcode`�=\active \def�{d\kern-1pt'}
\catcode`�=\active \def�{\protect\v e}
\catcode`�=\active \def�{\protect\ogonek e}
\catcode`�=\active \def�{\protect\u g}
\catcode`�=\active \def�{\protect\' l}
\catcode`�=\active \def�{l\kern-1pt'}
\catcode`�=\active \def�{\protect\l}
\catcode`�=\active \def�{\protect\' n}
\catcode`�=\active \def�{\protect\v n}
\catcode`�=\active \def�{\protect\eng}
\catcode`�=\active \def�{\protect\H o}
\catcode`�=\active \def�{\protect\' r}
\catcode`�=\active \def�{\protect\v r}
\catcode`�=\active \def�{\protect\' s}
\catcode`�=\active \def�{\protect\v s}
\catcode`�=\active \def�{\protect\c s}
\catcode`�=\active \def�{t\kern-1pt'}
\catcode`�=\active \def�{\protect\c t}
\catcode`�=\active \def�{\protect\H u}
\catcode`�=\active \def�{\protect\accent23 u}
\catcode`�=\active \def�{\protect\" y}
\catcode`�=\active \def�{\protect\' z}
\catcode`�=\active \def�{\protect\v z}
\catcode`�=\active \def�{\protect\. z}
\catcode`�=\active \def�{\protect\u A}
\catcode`�=\active \def�{\protect\" E}
\catcode`�=\active \def�{\protect\^ E}
\catcode`�=\active \def�{\protect\. I}
%
% Someday Cork fonts will hopefully become available. Then we can use
% the following instead:
%
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=12
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=12 % reverse `?'
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=12 % reverse `!'
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%\catcode`�=11
%
% For compatibility we also define the standard IBM PC codes
% Beta is mapped onto es-zet !
%
\catcode`�=\active \def�{�}% PC users use beta for es-zet
\lccode`�=`� \uccode`�=`� % � is uppercase `�' in our cork table coding
\catcode`^^U=\active \def^^U{\protect\S}% PC paragraph sign
%
% -eof-
